/*
 * Created on Jul 23, 2005
 *
 */
package org.mushroomdb.executionplan;

import java.io.Serializable;
import java.util.Iterator;

/**
 * @author Matu
 *
 */
public interface ExecutionPlanElement extends Serializable {

	/**
	 * Devuelve el nombre de este nodo.
	 * @return
	 */
	String getName();
	
	/**
	 * Devuelve los atributos de este elemento.
	 * @return un Iterador que contiene Strings. 
	 */
	Iterator<String> getAttributes();
	
	/**
	 * Devuelve los elementos hijos.
	 * @return Iterador con hijos o null si es hoja.
	 */
	Iterator<ExecutionPlanElement> getChildren();
}
